home *** CD-ROM | disk | FTP | other *** search
/ CD Fun House 1 / CD Fun House (Wayzata Technology).iso / •Games Parlour• / •Yahtzee• / Hyper Yahtzee 4.0 / Hyper Yahtzee 4.0.rsrc / XFCN_2000_CALCODDS.txt < prev    next >
Text File  |  1990-10-02  |  38KB  |  689 lines

  1. start:
  2. 00000000  4E56 0000                link       A6, 0
  3. 00000004  2F2E 0008                move.l     -[A7], [A6 + 0x8]
  4. 00000008  4EBA 0534                jsr        [PC + 0x534 /* 0000053E */]
  5. 0000000C  4E5E                     unlink     A6
  6. 0000000E  2E9F                     move.l     [A7], [A7]+
  7. 00000010  4E75                     rts
  8. 00000012  C54E                     exg        A2, A6
  9. 00000014  5452                     addq.w     [A2], 2
  10. 00000016  5950                     subq.w     [A0], 4
  11. 00000018  4F49                     chk.w      D7, A1
  12. 0000001A  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  13. // begin alternate branch 0000001C-00000020
  14. fn0000001C:
  15. 0000001C  4E56 FF00                link       A6, -0x0100
  16. // end alternate branch 0000001C-00000020
  17. fn0000001C: // (misaligned)
  18. 0000001E  FF00                     .extension 0xF00 <<F/4-5/7>> // unimplemented
  19. 00000020  2F0C                     move.l     -[A7], A4
  20. 00000022  206E 000C                movea.l    A0, [A6 + 0xC]
  21. 00000026  43EE FF00                lea.l      A1, [A6 - 0x100]
  22. 0000002A  703F                     moveq.l    D0, 0x3F
  23. label0000002C:
  24. 0000002C  22D8                     move.l     [A1]+, [A0]+
  25. 0000002E  51C8 FFFC                dbf        D0, -0x6 /* 0000002C */
  26. 00000032  206E 0008                movea.l    A0, [A6 + 0x8]
  27. 00000036  2868 0008                movea.l    A4, [A0 + 0x8]
  28. 0000003A  41EE FF00                lea.l      A0, [A6 - 0x100]
  29. 0000003E  2948 0050                move.l     [A4 + 0x50], A0
  30. 00000042  397C 0007 004C           move.w     [A4 + 0x4C], 0x7
  31. 00000048  2F2C 0048                move.l     -[A7], [A4 + 0x48]
  32. 0000004C  205F                     movea.l    A0, [A7]+
  33. 0000004E  4E90                     jsr        [A0]
  34. 00000050  2D6C 0070 0010           move.l     [A6 + 0x10], [A4 + 0x70]
  35. 00000056  285F                     movea.l    A4, [A7]+
  36. 00000058  4E5E                     unlink     A6
  37. 0000005A  205F                     movea.l    A0, [A7]+
  38. 0000005C  504F                     addq.w     A7, 8
  39. 0000005E  4ED0                     jmp        [A0]
  40. 00000060  D041                     add.w      D0, D1
  41. 00000062  5354                     subq.w     [A4], 1
  42. 00000064  4F5A                     chk.w      D7, [A2]+
  43. 00000066  4552                     chk.w      D2, [A2]
  44. 00000068  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  45. // begin alternate branch 0000006A-00000070
  46. fn0000006A:
  47. 0000006A  4E56 0000                link       A6, 0
  48. 0000006E  2F0C                     move.l     -[A7], A4
  49. // end alternate branch 0000006A-00000070
  50. fn0000006A: // (misaligned)
  51. 0000006C  0000 2F0C                ori.b      D0, 0xC
  52. 00000070  206E 0008                movea.l    A0, [A6 + 0x8]
  53. 00000074  2868 0008                movea.l    A4, [A0 + 0x8]
  54. 00000078  296E 0010 0050           move.l     [A4 + 0x50], [A6 + 0x10]
  55. 0000007E  296E 000C 0054           move.l     [A4 + 0x54], [A6 + 0xC]
  56. 00000084  397C 0008 004C           move.w     [A4 + 0x4C], 0x8
  57. 0000008A  2F2C 0048                move.l     -[A7], [A4 + 0x48]
  58. 0000008E  205F                     movea.l    A0, [A7]+
  59. 00000090  4E90                     jsr        [A0]
  60. 00000092  285F                     movea.l    A4, [A7]+
  61. 00000094  4E5E                     unlink     A6
  62. 00000096  205F                     movea.l    A0, [A7]+
  63. 00000098  DEFC 000C                add.w      A7, 0xC
  64. 0000009C  4ED0                     jmp        [A0]
  65. 0000009E  DA45                     add.w      D5, D5
  66. 000000A0  524F                     addq.w     A7, 1
  67. 000000A2  544F                     addq.w     A7, 2
  68. 000000A4  5041                     addq.w     D1, 8
  69. 000000A6  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  70. // begin alternate branch 000000A8-000000AC
  71. fn000000A8:
  72. 000000A8  4E56 FFE0                link       A6, -0x0020
  73. // end alternate branch 000000A8-000000AC
  74. fn000000A8: // (misaligned)
  75. 000000AA  FFE0                     .invalid   <<F/7/7>>
  76. 000000AC  2F0C                     move.l     -[A7], A4
  77. 000000AE  206E 000C                movea.l    A0, [A6 + 0xC]
  78. 000000B2  43EE FFE0                lea.l      A1, [A6 - 0x20]
  79. 000000B6  7007                     moveq.l    D0, 0x07
  80. label000000B8:
  81. 000000B8  22D8                     move.l     [A1]+, [A0]+
  82. 000000BA  51C8 FFFC                dbf        D0, -0x6 /* 000000B8 */
  83. 000000BE  206E 0008                movea.l    A0, [A6 + 0x8]
  84. 000000C2  2868 0008                movea.l    A4, [A0 + 0x8]
  85. 000000C6  41EE FFE0                lea.l      A0, [A6 - 0x20]
  86. 000000CA  2948 0050                move.l     [A4 + 0x50], A0
  87. 000000CE  397C 000A 004C           move.w     [A4 + 0x4C], 0xA /* '\n' */
  88. 000000D4  2F2C 0048                move.l     -[A7], [A4 + 0x48]
  89. 000000D8  205F                     movea.l    A0, [A7]+
  90. 000000DA  4E90                     jsr        [A0]
  91. 000000DC  2D6C 0070 0010           move.l     [A6 + 0x10], [A4 + 0x70]
  92. 000000E2  285F                     movea.l    A4, [A7]+
  93. 000000E4  4E5E                     unlink     A6
  94. 000000E6  205F                     movea.l    A0, [A7]+
  95. 000000E8  504F                     addq.w     A7, 8
  96. 000000EA  4ED0                     jmp        [A0]
  97. 000000EC  D354                     add.w      [A4], D1
  98. 000000EE  5254                     addq.w     [A4], 1
  99. 000000F0  4F4E                     chk.w      D7, A6
  100. 000000F2  554D                     subq.w     A5, 2
  101. 000000F4  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  102. // begin alternate branch 000000F6-000000FA
  103. fn000000F6:
  104. 000000F6  4E56 FFE0                link       A6, -0x0020
  105. // end alternate branch 000000F6-000000FA
  106. fn000000F6: // (misaligned)
  107. 000000F8  FFE0                     .invalid   <<F/7/7>>
  108. 000000FA  2F0C                     move.l     -[A7], A4
  109. 000000FC  206E 0008                movea.l    A0, [A6 + 0x8]
  110. 00000100  2868 0008                movea.l    A4, [A0 + 0x8]
  111. 00000104  296E 000C 0050           move.l     [A4 + 0x50], [A6 + 0xC]
  112. 0000010A  41EE FFE0                lea.l      A0, [A6 - 0x20]
  113. 0000010E  2948 0054                move.l     [A4 + 0x54], A0
  114. 00000112  397C 000E 004C           move.w     [A4 + 0x4C], 0xE
  115. 00000118  2F2C 0048                move.l     -[A7], [A4 + 0x48]
  116. 0000011C  205F                     movea.l    A0, [A7]+
  117. 0000011E  4E90                     jsr        [A0]
  118. 00000120  206E 0010                movea.l    A0, [A6 + 0x10]
  119. 00000124  43EE FFE0                lea.l      A1, [A6 - 0x20]
  120. 00000128  7007                     moveq.l    D0, 0x07
  121. label0000012A:
  122. 0000012A  20D9                     move.l     [A0]+, [A1]+
  123. 0000012C  51C8 FFFC                dbf        D0, -0x6 /* 0000012A */
  124. 00000130  285F                     movea.l    A4, [A7]+
  125. 00000132  4E5E                     unlink     A6
  126. 00000134  205F                     movea.l    A0, [A7]+
  127. 00000136  504F                     addq.w     A7, 8
  128. 00000138  4ED0                     jmp        [A0]
  129. 0000013A  CE55                     and.w      D7, [A5]
  130. 0000013C  4D54                     chk.w      D6, [A4]
  131. 0000013E  4F53                     chk.w      D7, [A3]
  132. 00000140  5452                     addq.w     [A2], 2
  133. 00000142  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  134. // begin alternate branch 00000144-00000148
  135. fn00000144:
  136. 00000144  4E56 FF00                link       A6, -0x0100
  137. // end alternate branch 00000144-00000148
  138. fn00000144: // (misaligned)
  139. 00000146  FF00                     .extension 0xF00 <<F/4-5/7>> // unimplemented
  140. 00000148  2F0C                     move.l     -[A7], A4
  141. 0000014A  206E 0010                movea.l    A0, [A6 + 0x10]
  142. 0000014E  43EE FF00                lea.l      A1, [A6 - 0x100]
  143. 00000152  703F                     moveq.l    D0, 0x3F
  144. label00000154:
  145. 00000154  22D8                     move.l     [A1]+, [A0]+
  146. 00000156  51C8 FFFC                dbf        D0, -0x6 /* 00000154 */
  147. 0000015A  206E 0008                movea.l    A0, [A6 + 0x8]
  148. 0000015E  2868 0008                movea.l    A4, [A0 + 0x8]
  149. 00000162  41EE FF00                lea.l      A0, [A6 - 0x100]
  150. 00000166  2948 0050                move.l     [A4 + 0x50], A0
  151. 0000016A  296E 000C 0054           move.l     [A4 + 0x54], [A6 + 0xC]
  152. 00000170  397C 0013 004C           move.w     [A4 + 0x4C], 0x13
  153. 00000176  2F2C 0048                move.l     -[A7], [A4 + 0x48]
  154. 0000017A  205F                     movea.l    A0, [A7]+
  155. 0000017C  4E90                     jsr        [A0]
  156. 0000017E  285F                     movea.l    A4, [A7]+
  157. 00000180  4E5E                     unlink     A6
  158. 00000182  205F                     movea.l    A0, [A7]+
  159. 00000184  DEFC 000C                add.w      A7, 0xC
  160. 00000188  4ED0                     jmp        [A0]
  161. 0000018A  D345                     addx.w     D1, D5
  162. 0000018C  5447                     addq.w     D7, 2
  163. 0000018E  4C4F 4241                movem.l    D0,D6,A1,A6, A7
  164. 00000192  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  165. // begin alternate branch 00000194-00000198
  166. fn00000194:
  167. 00000194  4E56 FFFE                link       A6, -0x0002
  168. // end alternate branch 00000194-00000198
  169. fn00000194: // (misaligned)
  170. 00000196  FFFE                     .invalid   <<F/7/7>>
  171. 00000198  48E7 0108                movem.l    -[A7], D7,A4
  172. 0000019C  286E 0008                movea.l    A4, [A6 + 0x8]
  173. 000001A0  422C FF00                clr.b      [A4 - 0x100]
  174. 000001A4  7E01                     moveq.l    D7, 0x01
  175. 000001A6  600E                     bra        +0x10 /* 000001B6 */
  176. label000001A8:
  177. 000001A8  3007                     move.w     D0, D7
  178. 000001AA  D040                     add.w      D0, D0
  179. 000001AC  41EC FEDA                lea.l      A0, [A4 - 0x126]
  180. 000001B0  4270 0000                clr.w      [A0 + D0.w]
  181. 000001B4  5247                     addq.w     D7, 1
  182. label000001B6:
  183. 000001B6  0C47 000D                cmpi.w     D7, 0xD /* '\r' */
  184. 000001BA  6FEC                     ble        -0x12 /* 000001A8 */
  185. 000001BC  7E01                     moveq.l    D7, 0x01
  186. 000001BE  6032                     bra        +0x34 /* 000001F2 */
  187. label000001C0:
  188. 000001C0  3007                     move.w     D0, D7
  189. 000001C2  D040                     add.w      D0, D0
  190. 000001C4  41EC FECE                lea.l      A0, [A4 - 0x132]
  191. 000001C8  4270 0000                clr.w      [A0 + D0.w]
  192. 000001CC  3007                     move.w     D0, D7
  193. 000001CE  7200                     moveq.l    D1, 0x00
  194. 000001D0  5340                     subq.w     D0, 1
  195. 000001D2  0241 0001                andi.w     D1, 0x1
  196. 000001D6  3400                     move.w     D2, D0
  197. 000001D8  0242 0007                andi.w     D2, 0x7
  198. 000001DC  E648                     lsr        D0.w, 3
  199. 000001DE  43EC FECF                lea.l      A1, [A4 - 0x131]
  200. 000001E2  41F1 0000                lea.l      A0, [A1 + D0.w]
  201. 000001E6  70FE                     moveq.l    D0, 0xFFFFFFFE
  202. 000001E8  E538                     rol        D0.b, D2
  203. 000001EA  E529                     lsl        D1.b, D2
  204. 000001EC  C110                     and.b      [A0], D0
  205. 000001EE  8310                     or.b       [A0], D1
  206. 000001F0  5247                     addq.w     D7, 1
  207. label000001F2:
  208. 000001F2  0C47 0006                cmpi.w     D7, 0x6
  209. 000001F6  6FC8                     ble        -0x36 /* 000001C0 */
  210. 000001F8  7E01                     moveq.l    D7, 0x01
  211. 000001FA  6078                     bra        +0x7A /* 00000274 */
  212. label000001FC:
  213. 000001FC  3007                     move.w     D0, D7
  214. 000001FE  D040                     add.w      D0, D0
  215. 00000200  41EC FEF4                lea.l      A0, [A4 - 0x10C]
  216. 00000204  3230 0000                move.w     D1, [A0 + D0.w]
  217. 00000208  D241                     add.w      D1, D1
  218. 0000020A  3007                     move.w     D0, D7
  219. 0000020C  D040                     add.w      D0, D0
  220. 0000020E  41EC FEF4                lea.l      A0, [A4 - 0x10C]
  221. 00000212  3430 0000                move.w     D2, [A0 + D0.w]
  222. 00000216  41EC FEDA                lea.l      A0, [A4 - 0x126]
  223. 0000021A  D570 1000                add.w      [A0 + D1.w], D2
  224. 0000021E  3007                     move.w     D0, D7
  225. 00000220  D040                     add.w      D0, D0
  226. 00000222  41EC FEF4                lea.l      A0, [A4 - 0x10C]
  227. 00000226  3230 0000                move.w     D1, [A0 + D0.w]
  228. 0000022A  D241                     add.w      D1, D1
  229. 0000022C  41EC FECE                lea.l      A0, [A4 - 0x132]
  230. 00000230  5270 1000                addq.w     [A0 + D1.w], 1
  231. 00000234  3007                     move.w     D0, D7
  232. 00000236  D040                     add.w      D0, D0
  233. 00000238  41EC FEF4                lea.l      A0, [A4 - 0x10C]
  234. 0000023C  3230 0000                move.w     D1, [A0 + D0.w]
  235. 00000240  7001                     moveq.l    D0, 0x01
  236. 00000242  5341                     subq.w     D1, 1
  237. 00000244  0240 0001                andi.w     D0, 0x1
  238. 00000248  3401                     move.w     D2, D1
  239. 0000024A  0242 0007                andi.w     D2, 0x7
  240. 0000024E  E649                     lsr        D1.w, 3
  241. 00000250  43EC FECF                lea.l      A1, [A4 - 0x131]
  242. 00000254  41F1 1000                lea.l      A0, [A1 + D1.w]
  243. 00000258  72FE                     moveq.l    D1, 0xFFFFFFFE
  244. 0000025A  E539                     rol        D1.b, D2
  245. 0000025C  E528                     lsl        D0.b, D2
  246. 0000025E  C310                     and.b      [A0], D1
  247. 00000260  8110                     or.b       [A0], D0
  248. 00000262  3007                     move.w     D0, D7
  249. 00000264  D040                     add.w      D0, D0
  250. 00000266  41EC FEF4                lea.l      A0, [A4 - 0x10C]
  251. 0000026A  3230 0000                move.w     D1, [A0 + D0.w]
  252. 0000026E  D36C FEF4                add.w      [A4 - 0x10C], D1
  253. 00000272  5247                     addq.w     D7, 1
  254. label00000274:
  255. 00000274  0C47 0005                cmpi.w     D7, 0x5
  256. 00000278  6F82                     ble        -0x7C /* 000001FC */
  257. 0000027A  4CDF 1080                movem.l    D7,A4, [A7]+
  258. 0000027E  4E5E                     unlink     A6
  259. 00000280  2E9F                     move.l     [A7], [A7]+
  260. 00000282  4E75                     rts
  261. 00000284  C341                     exg        D1, D1
  262. 00000286  4C43 3154                movem.l    D2,D4,D6,A0,A4,A5, D3
  263. 0000028A  4F36 0000                .invalid   7, [A6 + D0.w] // invalid opcode 4 with b == 4
  264. fn0000028E:
  265. 0000028E  4E56 FFFE                link       A6, -0x0002
  266. 00000292  48E7 0108                movem.l    -[A7], D7,A4
  267. 00000296  286E 0008                movea.l    A4, [A6 + 0x8]
  268. 0000029A  7E01                     moveq.l    D7, 0x01
  269. 0000029C  6000 00AA                bra        +0xAC /* 00000348 */
  270. label000002A0:
  271. 000002A0  3007                     move.w     D0, D7
  272. 000002A2  D040                     add.w      D0, D0
  273. 000002A4  41EC FECE                lea.l      A0, [A4 - 0x132]
  274. 000002A8  0C70 0002 0000           cmpi.w     [A0 + D0.w], 0x2
  275. 000002AE  6F00 0096                ble        +0x98 /* 00000346 */
  276. 000002B2  3007                     move.w     D0, D7
  277. 000002B4  D040                     add.w      D0, D0
  278. 000002B6  41EC FECE                lea.l      A0, [A4 - 0x132]
  279. 000002BA  0C70 0005 0000           cmpi.w     [A0 + D0.w], 0x5
  280. 000002C0  6606                     bne        +0x8 /* 000002C8 */
  281. 000002C2  397C 0032 FEF2           move.w     [A4 - 0x10E], 0x32 /* '2' */
  282. label000002C8:
  283. 000002C8  3007                     move.w     D0, D7
  284. 000002CA  D040                     add.w      D0, D0
  285. 000002CC  41EC FECE                lea.l      A0, [A4 - 0x132]
  286. 000002D0  0C70 0003 0000           cmpi.w     [A0 + D0.w], 0x3
  287. 000002D6  6F06                     ble        +0x8 /* 000002DE */
  288. 000002D8  396C FEF4 FEEA           move.w     [A4 - 0x116], [A4 - 0x10C]
  289. label000002DE:
  290. 000002DE  3007                     move.w     D0, D7
  291. 000002E0  D040                     add.w      D0, D0
  292. 000002E2  41EC FECE                lea.l      A0, [A4 - 0x132]
  293. 000002E6  0C70 0002 0000           cmpi.w     [A0 + D0.w], 0x2
  294. 000002EC  6F06                     ble        +0x8 /* 000002F4 */
  295. 000002EE  396C FEF4 FEE8           move.w     [A4 - 0x118], [A4 - 0x10C]
  296. label000002F4:
  297. 000002F4  3007                     move.w     D0, D7
  298. 000002F6  D040                     add.w      D0, D0
  299. 000002F8  41EC FECE                lea.l      A0, [A4 - 0x132]
  300. 000002FC  0C70 0003 0000           cmpi.w     [A0 + D0.w], 0x3
  301. 00000302  6642                     bne        +0x44 /* 00000346 */
  302. 00000304  0C6C 0002 FED0           cmpi.w     [A4 - 0x130], 0x2
  303. 0000030A  57C0                     seq        D0
  304. 0000030C  0C6C 0002 FED2           cmpi.w     [A4 - 0x12E], 0x2
  305. 00000312  57C1                     seq        D1
  306. 00000314  8001                     or.b       D0, D1
  307. 00000316  0C6C 0002 FED4           cmpi.w     [A4 - 0x12C], 0x2
  308. 0000031C  57C1                     seq        D1
  309. 0000031E  8001                     or.b       D0, D1
  310. 00000320  0C6C 0002 FED6           cmpi.w     [A4 - 0x12A], 0x2
  311. 00000326  57C1                     seq        D1
  312. 00000328  8001                     or.b       D0, D1
  313. 0000032A  0C6C 0002 FED8           cmpi.w     [A4 - 0x128], 0x2
  314. 00000330  57C1                     seq        D1
  315. 00000332  8001                     or.b       D0, D1
  316. 00000334  0C6C 0002 FEDA           cmpi.w     [A4 - 0x126], 0x2
  317. 0000033A  57C1                     seq        D1
  318. 0000033C  8001                     or.b       D0, D1
  319. 0000033E  6706                     beq        +0x8 /* 00000346 */
  320. 00000340  397C 0019 FEEC           move.w     [A4 - 0x114], 0x19
  321. label00000346:
  322. 00000346  5247                     addq.w     D7, 1
  323. label00000348:
  324. 00000348  0C47 0006                cmpi.w     D7, 0x6
  325. 0000034C  6F00 FF52                ble        -0xAC /* 000002A0 */
  326. 00000350  4CDF 1080                movem.l    D7,A4, [A7]+
  327. 00000354  4E5E                     unlink     A6
  328. 00000356  2E9F                     move.l     [A7], [A7]+
  329. 00000358  4E75                     rts
  330. 0000035A  C341                     exg        D1, D1
  331. 0000035C  4C43 3334                movem.l    D2,D4,D5,A0,A1,A4,A5, D3
  332. 00000360  3520                     move.w     -[A2], -[A0]
  333. 00000362  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  334. // begin alternate branch 00000364-0000036A
  335. fn00000364:
  336. 00000364  4E56 0000                link       A6, 0
  337. 00000368  2F0C                     move.l     -[A7], A4
  338. // end alternate branch 00000364-0000036A
  339. fn00000364: // (misaligned)
  340. 00000366  0000 2F0C                ori.b      D0, 0xC
  341. 0000036A  286E 0008                movea.l    A4, [A6 + 0x8]
  342. 0000036E  0C6C 0001 FED2           cmpi.w     [A4 - 0x12E], 0x1
  343. 00000374  57C0                     seq        D0
  344. 00000376  0C6C 0001 FED4           cmpi.w     [A4 - 0x12C], 0x1
  345. 0000037C  57C1                     seq        D1
  346. 0000037E  C001                     and.b      D0, D1
  347. 00000380  0C6C 0001 FED6           cmpi.w     [A4 - 0x12A], 0x1
  348. 00000386  57C1                     seq        D1
  349. 00000388  C001                     and.b      D0, D1
  350. 0000038A  0C6C 0001 FED8           cmpi.w     [A4 - 0x128], 0x1
  351. 00000390  57C1                     seq        D1
  352. 00000392  C001                     and.b      D0, D1
  353. 00000394  670C                     beq        +0xE /* 000003A2 */
  354. 00000396  397C 0028 FEF0           move.w     [A4 - 0x110], 0x28 /* '(' */
  355. 0000039C  397C 001E FEEE           move.w     [A4 - 0x112], 0x1E
  356. label000003A2:
  357. 000003A2  285F                     movea.l    A4, [A7]+
  358. 000003A4  4E5E                     unlink     A6
  359. 000003A6  2E9F                     move.l     [A7], [A7]+
  360. 000003A8  4E75                     rts
  361. 000003AA  C341                     exg        D1, D1
  362. 000003AC  4C43 4C53                movem.l    D0,D1,D4,D6,A2,A3,A6, D3
  363. 000003B0  2020                     move.l     D0, -[A0]
  364. 000003B2  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  365. // begin alternate branch 000003B4-000003BA
  366. fn000003B4:
  367. 000003B4  4E56 0000                link       A6, 0
  368. 000003B8  2F0C                     move.l     -[A7], A4
  369. // end alternate branch 000003B4-000003BA
  370. fn000003B4: // (misaligned)
  371. 000003B6  0000 2F0C                ori.b      D0, 0xC
  372. 000003BA  286E 0008                movea.l    A4, [A6 + 0x8]
  373. 000003BE  4A6C FED4                tst.w      [A4 - 0x12C]
  374. 000003C2  56C0                     sne        D0
  375. 000003C4  4A6C FED6                tst.w      [A4 - 0x12A]
  376. 000003C8  56C1                     sne        D1
  377. 000003CA  C001                     and.b      D0, D1
  378. 000003CC  6742                     beq        +0x44 /* 00000410 */
  379. 000003CE  4A6C FED0                tst.w      [A4 - 0x130]
  380. 000003D2  56C0                     sne        D0
  381. 000003D4  4A6C FED2                tst.w      [A4 - 0x12E]
  382. 000003D8  56C1                     sne        D1
  383. 000003DA  C001                     and.b      D0, D1
  384. 000003DC  6706                     beq        +0x8 /* 000003E4 */
  385. 000003DE  397C 001E FEEE           move.w     [A4 - 0x112], 0x1E
  386. label000003E4:
  387. 000003E4  4A6C FED2                tst.w      [A4 - 0x12E]
  388. 000003E8  56C0                     sne        D0
  389. 000003EA  4A6C FED8                tst.w      [A4 - 0x128]
  390. 000003EE  56C1                     sne        D1
  391. 000003F0  C001                     and.b      D0, D1
  392. 000003F2  6706                     beq        +0x8 /* 000003FA */
  393. 000003F4  397C 001E FEEE           move.w     [A4 - 0x112], 0x1E
  394. label000003FA:
  395. 000003FA  4A6C FED8                tst.w      [A4 - 0x128]
  396. 000003FE  56C0                     sne        D0
  397. 00000400  4A6C FEDA                tst.w      [A4 - 0x126]
  398. 00000404  56C1                     sne        D1
  399. 00000406  C001                     and.b      D0, D1
  400. 00000408  6706                     beq        +0x8 /* 00000410 */
  401. 0000040A  397C 001E FEEE           move.w     [A4 - 0x112], 0x1E
  402. label00000410:
  403. 00000410  285F                     movea.l    A4, [A7]+
  404. 00000412  4E5E                     unlink     A6
  405. 00000414  2E9F                     move.l     [A7], [A7]+
  406. 00000416  4E75                     rts
  407. 00000418  C341                     exg        D1, D1
  408. 0000041A  4C43 5353                movem.l    D0,D1,D4,D6,A0,A1,A4,A6, D3
  409. 0000041E  2020                     move.l     D0, -[A0]
  410. 00000420  0000 4E56                ori.b      D0, 0x56 /* 'V' */
  411. // begin alternate branch 00000422-00000426
  412. fn00000422:
  413. 00000422  4E56 FDDE                link       A6, -0x0222
  414. // end alternate branch 00000422-00000426
  415. fn00000422: // (misaligned)
  416. 00000424  FDDE                     .invalid   <<F/7/6>>
  417. 00000426  48E7 0108                movem.l    -[A7], D7,A4
  418. 0000042A  286E 0008                movea.l    A4, [A6 + 0x8]
  419. 0000042E  7E01                     moveq.l    D7, 0x01
  420. 00000430  6054                     bra        +0x56 /* 00000486 */
  421. label00000432:
  422. 00000432  486E FDDE                pea.l      [A6 - 0x222]
  423. 00000436  3007                     move.w     D0, D7
  424. 00000438  D040                     add.w      D0, D0
  425. 0000043A  41EC FEDA                lea.l      A0, [A4 - 0x126]
  426. 0000043E  3230 0000                move.w     D1, [A0 + D0.w]
  427. 00000442  48C1                     ext.l      D1
  428. 00000444  2F01                     move.l     -[A7], D1
  429. 00000446  2F2E 0008                move.l     -[A7], [A6 + 0x8]
  430. 0000044A  4EBA FCAA                jsr        [PC - 0x356 /* 000000F6 */]
  431. 0000044E  205F                     movea.l    A0, [A7]+
  432. 00000450  43EE FF00                lea.l      A1, [A6 - 0x100]
  433. 00000454  7007                     moveq.l    D0, 0x07
  434. label00000456:
  435. 00000456  22D8                     move.l     [A1]+, [A0]+
  436. 00000458  51C8 FFFC                dbf        D0, -0x6 /* 00000456 */
  437. 0000045C  486C FF00                pea.l      [A4 - 0x100]
  438. 00000460  486E FF00                pea.l      [A6 - 0x100]
  439. 00000464  487A 003E                pea.l      [PC + 0x3E /* 000004A4, value 0x12C4E56 */]
  440. 00000468  486E FDFE                pea.l      [A6 - 0x202]
  441. 0000046C  3F3C 0003                move.w     -[A7], 0x3
  442. 00000470  4EBA 0220                jsr        [PC + 0x220 /* 00000692 */]
  443. 00000474  41EC FF00                lea.l      A0, [A4 - 0x100]
  444. 00000478  43EE FDFE                lea.l      A1, [A6 - 0x202]
  445. 0000047C  703F                     moveq.l    D0, 0x3F
  446. label0000047E:
  447. 0000047E  20D9                     move.l     [A0]+, [A1]+
  448. 00000480  51C8 FFFC                dbf        D0, -0x6 /* 0000047E */
  449. 00000484  5247                     addq.w     D7, 1
  450. label00000486:
  451. 00000486  0C47 000D                cmpi.w     D7, 0xD /* '\r' */
  452. 0000048A  6FA6                     ble        -0x58 /* 00000432 */
  453. 0000048C  532C FF00                subq.b     [A4 - 0x100], 1
  454. 00000490  4CDF 1080                movem.l    D7,A4, [A7]+
  455. 00000494  4E5E                     unlink     A6
  456. 00000496  2E9F                     move.l     [A7], [A7]+
  457. 00000498  4E75                     rts
  458. 0000049A  C34F                     exg        A1, A7
  459. 0000049C  4E56 4552                link       A6, -0xFFFFBAAE
  460. 000004A0  5450                     addq.w     [A0], 2
  461. 000004A2  0002 012C                ori.b      D2, 0x2C /* ',' */
  462. fn000004A6:
  463. 000004A6  4E56 FEFE                link       A6, -0x0102
  464. 000004AA  48E7 0108                movem.l    -[A7], D7,A4
  465. 000004AE  286E 0008                movea.l    A4, [A6 + 0x8]
  466. 000004B2  422C FF00                clr.b      [A4 - 0x100]
  467. 000004B6  7E01                     moveq.l    D7, 0x01
  468. 000004B8  605E                     bra        +0x60 /* 00000518 */
  469. label000004BA:
  470. 000004BA  3007                     move.w     D0, D7
  471. 000004BC  5340                     subq.w     D0, 1
  472. 000004BE  3200                     move.w     D1, D0
  473. 000004C0  E641                     asr        D1.w, 3
  474. 000004C2  41EC FECF                lea.l      A0, [A4 - 0x131]
  475. 000004C6  0130 1000                btst       [A0 + D1.w], D0
  476. 000004CA  6726                     beq        +0x28 /* 000004F2 */
  477. 000004CC  486C FF00                pea.l      [A4 - 0x100]
  478. 000004D0  487A 0068                pea.l      [PC + 0x68 /* 0000053A, value 0x2312C00, pstring "1," */]
  479. 000004D4  486E FEFE                pea.l      [A6 - 0x102]
  480. 000004D8  3F3C 0002                move.w     -[A7], 0x2
  481. 000004DC  4EBA 01B4                jsr        [PC + 0x1B4 /* 00000692 */]
  482. 000004E0  41EC FF00                lea.l      A0, [A4 - 0x100]
  483. 000004E4  43EE FEFE                lea.l      A1, [A6 - 0x102]
  484. 000004E8  703F                     moveq.l    D0, 0x3F
  485. label000004EA:
  486. 000004EA  20D9                     move.l     [A0]+, [A1]+
  487. 000004EC  51C8 FFFC                dbf        D0, -0x6 /* 000004EA */
  488. 000004F0  6024                     bra        +0x26 /* 00000516 */
  489. label000004F2:
  490. 000004F2  486C FF00                pea.l      [A4 - 0x100]
  491. 000004F6  487A 003E                pea.l      [PC + 0x3E /* 00000536, value 0x2302C00, pstring "0," */]
  492. 000004FA  486E FEFE                pea.l      [A6 - 0x102]
  493. 000004FE  3F3C 0002                move.w     -[A7], 0x2
  494. 00000502  4EBA 018E                jsr        [PC + 0x18E /* 00000692 */]
  495. 00000506  41EC FF00                lea.l      A0, [A4 - 0x100]
  496. 0000050A  43EE FEFE                lea.l      A1, [A6 - 0x102]
  497. 0000050E  703F                     moveq.l    D0, 0x3F
  498. label00000510:
  499. 00000510  20D9                     move.l     [A0]+, [A1]+
  500. 00000512  51C8 FFFC                dbf        D0, -0x6 /* 00000510 */
  501. label00000516:
  502. 00000516  5247                     addq.w     D7, 1
  503. label00000518:
  504. 00000518  0C47 0006                cmpi.w     D7, 0x6
  505. 0000051C  6F9C                     ble        -0x62 /* 000004BA */
  506. 0000051E  532C FF00                subq.b     [A4 - 0x100], 1
  507. 00000522  4CDF 1080                movem.l    D7,A4, [A7]+
  508. 00000526  4E5E                     unlink     A6
  509. 00000528  2E9F                     move.l     [A7], [A7]+
  510. 0000052A  4E75                     rts
  511. 0000052C  D04F                     add.w      D0, A7
  512. 0000052E  5343                     subq.w     D3, 1
  513. 00000530  4F4E                     chk.w      D7, A6
  514. 00000532  5645                     addq.w     D5, 3
  515. 00000534  0008 0230                ori.b      A0, 0x30 /* '0' */
  516. 00000538  2C00                     move.l     D6, D0
  517. 0000053A  0231 2C00 4E56           andi.b     [A1 + D4 * 8 + 0x56], 0x0
  518. // begin alternate branch 0000053E-00000550
  519. fn0000053E:
  520. 0000053E  4E56 FECA                link       A6, -0x0136
  521. 00000542  48E7 0018                movem.l    -[A7], A3,A4
  522. 00000546  286E 0008                movea.l    A4, [A6 + 0x8]
  523. 0000054A  206C 0002                movea.l    A0, [A4 + 0x2]
  524. 0000054E  2F10                     move.l     -[A7], [A0]
  525. // end alternate branch 0000053E-00000550
  526. fn0000053E: // (misaligned)
  527. 00000540  FECA 48E7                .extension 0xECA <<F/2-3/7>> // unimplemented
  528. 00000544  0018 286E                ori.b      [A0]+, 0x6E /* 'n' */
  529. 00000548  0008 206C                ori.b      A0, 0x6C /* 'l' */
  530. 0000054C  0002 2F10                ori.b      D2, 0x10
  531. 00000550  486E FF00                pea.l      [A6 - 0x100]
  532. 00000554  2F0E                     move.l     -[A7], A6
  533. 00000556  4EBA FB12                jsr        [PC - 0x4EE /* 0000006A */]
  534. 0000055A  42A7                     clr.l      -[A7]
  535. 0000055C  486E FF00                pea.l      [A6 - 0x100]
  536. 00000560  2F0E                     move.l     -[A7], A6
  537. 00000562  4EBA FB44                jsr        [PC - 0x4BC /* 000000A8 */]
  538. 00000566  201F                     move.l     D0, [A7]+
  539. 00000568  3D40 FEF6                move.w     [A6 - 0x10A], D0
  540. 0000056C  206C 0006                movea.l    A0, [A4 + 0x6]
  541. 00000570  2F10                     move.l     -[A7], [A0]
  542. 00000572  486E FF00                pea.l      [A6 - 0x100]
  543. 00000576  2F0E                     move.l     -[A7], A6
  544. 00000578  4EBA FAF0                jsr        [PC - 0x510 /* 0000006A */]
  545. 0000057C  42A7                     clr.l      -[A7]
  546. 0000057E  486E FF00                pea.l      [A6 - 0x100]
  547. 00000582  2F0E                     move.l     -[A7], A6
  548. 00000584  4EBA FB22                jsr        [PC - 0x4DE /* 000000A8 */]
  549. 00000588  201F                     move.l     D0, [A7]+
  550. 0000058A  3D40 FEF8                move.w     [A6 - 0x108], D0
  551. 0000058E  206C 000A                movea.l    A0, [A4 + 0xA]
  552. 00000592  2F10                     move.l     -[A7], [A0]
  553. 00000594  486E FF00                pea.l      [A6 - 0x100]
  554. 00000598  2F0E                     move.l     -[A7], A6
  555. 0000059A  4EBA FACE                jsr        [PC - 0x532 /* 0000006A */]
  556. 0000059E  42A7                     clr.l      -[A7]
  557. 000005A0  486E FF00                pea.l      [A6 - 0x100]
  558. 000005A4  2F0E                     move.l     -[A7], A6
  559. 000005A6  4EBA FB00                jsr        [PC - 0x500 /* 000000A8 */]
  560. 000005AA  201F                     move.l     D0, [A7]+
  561. 000005AC  3D40 FEFA                move.w     [A6 - 0x106], D0
  562. 000005B0  206C 000E                movea.l    A0, [A4 + 0xE]
  563. 000005B4  2F10                     move.l     -[A7], [A0]
  564. 000005B6  486E FF00                pea.l      [A6 - 0x100]
  565. 000005BA  2F0E                     move.l     -[A7], A6
  566. 000005BC  4EBA FAAC                jsr        [PC - 0x554 /* 0000006A */]
  567. 000005C0  42A7                     clr.l      -[A7]
  568. 000005C2  486E FF00                pea.l      [A6 - 0x100]
  569. 000005C6  2F0E                     move.l     -[A7], A6
  570. 000005C8  4EBA FADE                jsr        [PC - 0x522 /* 000000A8 */]
  571. 000005CC  201F                     move.l     D0, [A7]+
  572. 000005CE  3D40 FEFC                move.w     [A6 - 0x104], D0
  573. 000005D2  206C 0012                movea.l    A0, [A4 + 0x12]
  574. 000005D6  2F10                     move.l     -[A7], [A0]
  575. 000005D8  486E FF00                pea.l      [A6 - 0x100]
  576. 000005DC  2F0E                     move.l     -[A7], A6
  577. 000005DE  4EBA FA8A                jsr        [PC - 0x576 /* 0000006A */]
  578. 000005E2  42A7                     clr.l      -[A7]
  579. 000005E4  486E FF00                pea.l      [A6 - 0x100]
  580. 000005E8  2F0E                     move.l     -[A7], A6
  581. 000005EA  4EBA FABC                jsr        [PC - 0x544 /* 000000A8 */]
  582. 000005EE  201F                     move.l     D0, [A7]+
  583. 000005F0  3D40 FEFE                move.w     [A6 - 0x102], D0
  584. 000005F4  2F0E                     move.l     -[A7], A6
  585. 000005F6  4EBA FB9C                jsr        [PC - 0x464 /* 00000194 */]
  586. 000005FA  2F0E                     move.l     -[A7], A6
  587. 000005FC  4EBA FC90                jsr        [PC - 0x370 /* 0000028E */]
  588. 00000600  4A6E FEE8                tst.w      [A6 - 0x118]
  589. 00000604  6612                     bne        +0x14 /* 00000618 */
  590. 00000606  2F0E                     move.l     -[A7], A6
  591. 00000608  4EBA FD5A                jsr        [PC - 0x2A6 /* 00000364 */]
  592. 0000060C  4A6E FEF0                tst.w      [A6 - 0x110]
  593. 00000610  6606                     bne        +0x8 /* 00000618 */
  594. 00000612  2F0E                     move.l     -[A7], A6
  595. 00000614  4EBA FD9E                jsr        [PC - 0x262 /* 000003B4 */]
  596. label00000618:
  597. 00000618  2F0E                     move.l     -[A7], A6
  598. 0000061A  4EBA FE06                jsr        [PC - 0x1FA /* 00000422 */]
  599. 0000061E  42A7                     clr.l      -[A7]
  600. 00000620  486E FF00                pea.l      [A6 - 0x100]
  601. 00000624  2F0E                     move.l     -[A7], A6
  602. 00000626  4EBA F9F4                jsr        [PC - 0x60C /* 0000001C */]
  603. 0000062A  295F 0042                move.l     [A4 + 0x42], [A7]+
  604. 0000062E  2F0E                     move.l     -[A7], A6
  605. 00000630  4EBA FE74                jsr        [PC - 0x18C /* 000004A6 */]
  606. 00000634  42A7                     clr.l      -[A7]
  607. 00000636  486E FF00                pea.l      [A6 - 0x100]
  608. 0000063A  2F0E                     move.l     -[A7], A6
  609. 0000063C  4EBA F9DE                jsr        [PC - 0x622 /* 0000001C */]
  610. 00000640  265F                     movea.l    A3, [A7]+
  611. 00000642  487A 0024                pea.l      [PC + 0x24 /* 00000668, value 0x7646963, pstring "dicepos" */]
  612. 00000646  2F0B                     move.l     -[A7], A3
  613. 00000648  2F0E                     move.l     -[A7], A6
  614. 0000064A  4EBA FAF8                jsr        [PC - 0x508 /* 00000144 */]
  615. 0000064E  2F0B                     move.l     -[A7], A3
  616. 00000650  4EBA 0036                jsr        [PC + 0x36 /* 00000688 */]
  617. 00000654  4CDF 1800                movem.l    A3,A4, [A7]+
  618. 00000658  4E5E                     unlink     A6
  619. 0000065A  2E9F                     move.l     [A7], [A7]+
  620. 0000065C  4E75                     rts
  621. 0000065E  C341                     exg        D1, D1
  622. 00000660  4C43 4F44                movem.l    D2,D6,A0,A1,A2,A3,A6, D3
  623. 00000664  4453                     neg.w      [A3]
  624. 00000666  0008 0764                ori.b      A0, 0x64 /* 'd' */
  625. 0000066A  6963                     bvs        +0x65 /* 000006CF */
  626. 0000066C  6570                     bcs        +0x72 /* 000006DE */
  627. 0000066E  6F73                     ble        +0x75 /* 000006E3 */
  628. 00000670  225F                     movea.l    A1, [A7]+
  629. 00000672  201F                     move.l     D0, [A7]+
  630. 00000674  A04C                     syscall    CompactMem
  631. 00000676  2E80                     move.l     [A7], D0
  632. 00000678  4E71                     nop
  633. 0000067A  7000                     moveq.l    D0, 0x00
  634. label0000067C:
  635. 0000067C  2F09                     move.l     -[A7], A1
  636. label0000067E:
  637. 0000067E  31C0 0220                move.w     [0x00000220 /* MemErr */], D0
  638. 00000682  4E75                     rts
  639. 00000684  7000                     moveq.l    D0, 0x00
  640. 00000686  60F6                     bra        -0x8 /* 0000067E */
  641. fn00000688:
  642. 00000688  225F                     movea.l    A1, [A7]+
  643. 0000068A  205F                     movea.l    A0, [A7]+
  644. 0000068C  A023                     syscall    DisposHandle/DisposeHandle
  645. 0000068E  4EFA FFEC                jmp        [PC - 0x14 /* 0000067C */]
  646. fn00000692:
  647. 00000692  48E7 E0E0                movem.l    -[A7], D0,D1,D2,A0,A1,A2
  648. 00000696  43EF 001C                lea.l      A1, [A7 + 0x1C]
  649. 0000069A  3019                     move.w     D0, [A1]+
  650. 0000069C  2059                     movea.l    A0, [A1]+
  651. 0000069E  3400                     move.w     D2, D0
  652. 000006A0  D442                     add.w      D2, D2
  653. 000006A2  D442                     add.w      D2, D2
  654. 000006A4  D2C2                     add.w      A1, D2
  655. 000006A6  4241                     clr.w      D1
  656. 000006A8  5248                     addq.w     A0, 1
  657. 000006AA  6020                     bra        +0x22 /* 000006CC */
  658. label000006AC:
  659. 000006AC  2461                     movea.l    A2, -[A1]
  660. 000006AE  4242                     clr.w      D2
  661. 000006B0  141A                     move.b     D2, [A2]+
  662. 000006B2  D242                     add.w      D1, D2
  663. 000006B4  0C41 00FF                cmpi.w     D1, 0xFF
  664. 000006B8  6F0E                     ble        +0x10 /* 000006C8 */
  665. 000006BA  0441 00FF                subi.w     D1, 0xFF
  666. 000006BE  9441                     sub.w      D2, D1
  667. 000006C0  323C 00FF                move.w     D1, 0xFF
  668. 000006C4  6002                     bra        +0x4 /* 000006C8 */
  669. label000006C6:
  670. 000006C6  10DA                     move.b     [A0]+, [A2]+
  671. label000006C8:
  672. 000006C8  51CA FFFC                dbf        D2, -0x6 /* 000006C6 */
  673. label000006CC:
  674. 000006CC  51C8 FFDE                dbf        D0, -0x24 /* 000006AC */
  675. 000006D0  2061                     movea.l    A0, -[A1]
  676. 000006D2  1081                     move.b     [A0], D1
  677. 000006D4  3021                     move.w     D0, -[A1]
  678. 000006D6  2049                     movea.l    A0, A1
  679. 000006D8  D040                     add.w      D0, D0
  680. 000006DA  D040                     add.w      D0, D0
  681. 000006DC  D0C0                     add.w      A0, D0
  682. label000006DE:
  683. 000006DE  5448                     addq.w     A0, 2
  684. 000006E0  20A1                     move.l     [A0], -[A1]
  685. 000006E2  2288                     move.l     [A1], A0
  686. 000006E4  4CDF 0707                movem.l    D0,D1,D2,A0,A1,A2, [A7]+
  687. 000006E8  2E5F                     movea.l    A7, [A7]+
  688. 000006EA  4E75                     rts
  689.